Confidence map generation for segmented optical coherence tomographic data

ABSTRACT

A method of generating a segmentation confidence map by processing classification values each indicating a respective classification of a respective voxel of a retinal C-scan into a respective retinal layer class of a predefined set of retinal layer classes, the method comprising: generating, for each voxel, a respective confidence value which indicates a level of confidence in the classification of the voxel; for a retinal layer class of the predefined set, identifying a subset of the voxels such that the classification value generated for each voxel indicates a classification of the voxel into the retinal layer class; calculating, for each A-scan having voxels in the identified subset, a respective average of the confidence indicator values generated for the voxels; and using the calculated averages to generate the map, which indicates a spatial distribution of a level of confidence in the classification of the voxels.

TECHNICAL FIELD

Example aspects herein generally relate to the field of OpticalCoherence Tomography (OCT) data processing and, more particularly, to atechnique for generating a confidence map for a retinal layersegmentation of an OCT volumetric scan of a retina of an eye.

BACKGROUND

Optical coherence tomography provides a powerful tool for examining andassessing the health of the retina of an eye. Being able toautomatically and accurately map out or trace, across an OCT image ofthe retina, a specific retinal layer of interest from among thedifferent layers of the retina that are discernible in the OCT image,would greatly facilitate OCT image analysis and may allow usefulinformation on the retina to be obtained.

FIGS. 1 a and 1 b (from “Atlas of OCT” by Adams, N. A., HeidelbergEngineering) illustrate an example OCT B-scan image of a retina (FIG. 1a ), and an enlarged segment (FIG. 1 b ) of the OCT B-scan image. Agrey-scale enhancement of the enlarged segment is shown on the left-handside of FIG. 1 b . Up to 18 distinct layers are typically visible in anOCT B-scan image of a retina, and a mapping of some of these layers toassociated anatomical layers of the retina (including the Inner/OuterSegment (IS/OS junction layer)) is shown in FIG. 1 b.

Various kinds of image classification algorithm have been used toautomatically segment an OCT retinal image into distinct retinal layers.A review of such algorithms is provided in “A Review of Algorithms forSegmentation of Optical Coherence Tomography from Retina” by R. Kafiehet al, J Med Signals Sens. 2013 January-March; 3(1): 45-60.

SUMMARY

There is provided, in accordance with a first example aspect herein, acomputer-implemented method of generating a segmentation confidence mapby processing retinal layer segmentation data generated by a retinallayer segmentation algorithm, which generates, as the retinal layersegmentation data, a respective set of probability values for each voxelof at least a portion of a C-scan of a retina, wherein each probabilityvalue indicates a probability of the voxel belonging to a respectiveretinal layer class of a predefined set of retinal layer classes. Themethod comprises generating, for each voxel of a set of voxels for whichthe retinal layer segmentation data has been generated: a respectivevalue of a classification indicator based on the respective set ofprobability values, the value of the classification indicator indicatinga classification of the voxel as belonging to a respective retinal layerclass of the predefined set of retinal layer classes; and a respectivevalue of a first confidence indicator which is indicative of arespective level of confidence in the classification of the voxel. Themethod further comprises: identifying, for a retinal layer class of thepredefined set of retinal layer classes, a subset of the set of voxelssuch that the value of the classification indicator generated for eachvoxel of the subset indicates a classification of the voxel as belongingto the retinal layer class; calculating, for each A-scan of a pluralityof A-scans of the C-scan, which A-scan has at least one voxel in theidentified subset, a respective value of a second confidence indicatorwhich is indicative of a level of confidence in a classification of theat least one voxel in the A-scan into the retinal layer class, based onat least one value of the first confidence indicator that has beenrespectively generated for the at least one voxel in the A-scan; andgenerating the segmentation confidence map using the calculated valuesof the second confidence indicator, such that the segmentationconfidence map indicates a spatial distribution of a level of confidencein the classification of the voxels in the subset as belonging to theretinal layer class of the predefined set of retinal layer classes.

In the generating of a respective value of the first confidenceindicator for each voxel of the set of voxels, the respective value ofthe first confidence indicator may be generated based on the respectiveset of probability values. The respective value of the first confidenceindicator may be calculated for each voxel of the set of voxels as oneof: a standard deviation of the respective set of probability values;1−D, where D is a difference between a highest probability value in therespective set of probability values and a lowest probability value inthe respective set of probability values; and 1−P, where P is adifference between a highest probability value in the respective set ofprobability values and a second highest probability value in therespective set of probability values.

The retinal layer segmentation algorithm may comprise one of aconvolutional neural network (CNN), a Gaussian Mixture model, a RandomForest, a Bayesian classifier and a Support Vector Machine.

The retinal layer segmentation algorithm may generate the retinal layersegmentation data by calculating, for each voxel of the at least aportion of the C-scan, a respective set of probability values, whereineach probability value indicates a probability of the voxel belonging toa respective class of a predefined set of classes, the predefined set ofclasses comprising the predefined set of retinal layer classes and apredefined background class. The value of the classification indicatorgenerated for each voxel of the set of voxels may indicate aclassification of the voxel as belonging to a respective class of thepredefined set of classes. The method may further comprise: for thebackground class, identifying a second subset of the set of voxels suchthat the value of the classification indicator generated for each voxelof the second subset indicates a classification of the voxel asbelonging to the background class; calculating, for each A-scan of aplurality of A-scans of the C-scan, which A-scan has at least one voxelin the identified second subset, a respective value of the secondconfidence indicator, based on at least one value of the firstconfidence indicator that has been respectively generated for the atleast one voxel in the A-scan; and generating a second segmentationconfidence map using the values of the second confidence indicatorcalculated for the A-scans having at least one voxel in the identifiedsecond subset, such that the second segmentation confidence mapindicates a spatial distribution of a level of confidence in theclassification of the voxels in the second subset as belonging to thebackground class.

There is provided, in accordance with a second example aspect herein, acomputer-implemented method of generating a segmentation confidence mapby processing retinal layer segmentation data generated by a retinallayer segmentation algorithm, which generates the retinal layersegmentation data by calculating, for each voxel of at least a portionof a C-scan of a retina, a respective value of a classificationindicator indicating a classification of the voxel as belonging to aretinal layer class of the predefined set of retinal layer classes. Themethod comprises: generating, for each voxel of a set of voxels forwhich the retinal layer segmentation data has been generated, arespective value of a first confidence indicator which is indicative ofa level of confidence in the classification of the voxel; identifying,for a retinal layer class of the predefined set of retinal layerclasses, a subset of the set of voxels such that the value of theclassification indicator generated for each voxel of the subsetindicates a classification of the voxel as belonging to the retinallayer class; calculating, for each A-scan of a plurality of A-scans ofthe C-scan, which A-scan has at least one voxel in the identifiedsubset, a respective value of a second confidence indicator which isindicative of a level of confidence in a classification of the at leastone voxel in the A-scan into the retinal layer class, based on at leastone value of the first confidence indicator that has been respectivelygenerated for the at least one voxel in the A-scan; and generating thesegmentation confidence map using the calculated values of the secondconfidence indicator, such that the segmentation confidence mapindicates a spatial distribution of a level of confidence in theclassification of the voxels in the subset as belonging to the retinallayer class of the predefined set of retinal layer classes.

In the generating of a respective value of the first confidenceindicator for each voxel of the set of voxels, the respective value ofthe first confidence indicator may be generated using a value of a localimage quality metric that indicates an image quality of a region of animage, which region has been rendered from a part of the C-scancomprising the voxel.

Any of the computer-implemented methods set out above may furthercomprise using the segmentation confidence map and the values of theclassification indicator to determine an indication of a thickness of alayer of the retina associated with the retinal layer class.

The indication of the thickness of the layer of the retina may bedetermined by a process of: using the segmentation confidence map toidentify, in the plurality of A-scans, an A-scan for which the value ofa second confidence indicator is indicative of a level of confidence inthe classification of the at least one voxel in the A-scan into theretinal layer class that exceeds a predefined threshold; and determininga count of the at least one voxel in the identified A-scan. This processmay be repeated to: identify, using the segmentation confidence map, asecond plurality of A-scans in the plurality of A-scans, wherein therespective value of a second confidence indicator calculated for eachA-scan of the second plurality of A-scans is indicative of a respectivelevel of confidence in the classification of the at least one voxel inthe A-scan into the retinal layer class that exceeds the predefinedthreshold; and determine, for each A-scan of the identified secondplurality of A-scans, a respective count of the at least one voxel inthe A-scan, wherein a respective indication of the thickness of thelayer of the retina is determined for each predefined region of aplurality of predefined regions of the retina, from which predefinedregion a respective set of A-scans of the identified second plurality ofA-scans has been acquired, by calculating an average of the countsdetermined for the A-scans of the set of A-scans. The predefined regionsmay be demarcated by an Early Treatment Diabetic Retinopathy Study(ETDRS) grid.

Alternatively, the indication of the thickness of the layer of theretina may be determined by: determining, for each A-scan of theplurality of A-scans, which A-scan has at least one voxel in theidentified subset, a respective count of the at least one voxel in theidentified subset in the A-scan; and determining a weighted average ofthe determined counts, wherein the respective count determined for eachA-scan having at least one voxel in the identified subset is weighted bythe respective value of the second confidence indicator. The indicationof the thickness of the layer of the retina may be determined for eachpredefined region of a plurality of predefined regions of the retina by:determining, for each A-scan acquired from the predefined region, whichA-scan has at least one voxel in the identified subset, a respectivecount of the at least one voxel in the identified subset in the A-scan;and determining a weighted average of the determined counts, wherein therespective count determined for each A-scan acquired from the predefinedregion and having at least one voxel in the identified subset isweighted by the respective value of the second confidence indicator. Thepredefined regions may be demarcated by an Early Treatment DiabeticRetinopathy Study (ETDRS) grid.

Any of the computer-implemented methods set out above may furthercomprise generating image data defining an image of at least a portionof the segmentation confidence map, and causing the image to bedisplayed on a display. The image may be caused to be displayed on thedisplay as one of: an overlay on an en-face image displayed on thedisplay, the en-face image being based on the subset of voxelsclassified as belonging to the retinal layer class; an overlay on aretinal layer thickness map displayed on the display, the retinal layerthickness map being based on the subset of voxels classified asbelonging to the retinal layer class; and a plot aligned with arepresentation of a B-scan displayed on the display, the B-scan beingbased on the subset of voxels classified as belonging to the retinallayer class.

Any of the computer-implemented methods set out above may furthercomprise determining whether the segmentation confidence map indicates alevel of confidence in the classification of the voxels in the subset asbelonging to the retinal layer class of the predefined set of retinallayer classes that is below a confidence threshold and, in a case wherethe segmentation confidence map is determined to indicate a level ofconfidence in the classification of the voxels that is below theconfidence threshold, generating an alert fora user.

There is also provided, in accordance with a third example aspectherein, a computer program comprising computer program instructionswhich, when executed by a computer, cause the computer to perform any ofthe methods set out above. The computer program may be stored on anon-transitory computer-readable storage medium, or it may be carried bya signal.

There is also provided, in accordance with a fourth example aspectherein, an apparatus for generating a segmentation confidence map byprocessing retinal layer segmentation data generated by a retinal layersegmentation algorithm, which generates, as the retinal layersegmentation data, a respective set of probability values for each voxelof at least a portion of a C-scan of a retina, wherein each probabilityvalue indicates a probability of the voxel belonging to a respectiveretinal layer class of a predefined set of retinal layer classes. Theapparatus comprises a voxel classification module arranged to generate,for each voxel of a set of voxels for which the retinal layersegmentation data has been generated: a respective value of aclassification indicator based on the respective set of probabilityvalues, the value of the classification indicator indicating aclassification of the voxel as belonging to a respective retinal layerclass of the predefined set of retinal layer classes; and a respectivevalue of a first confidence indicator which is indicative of arespective level of confidence in the classification of the voxel. Theapparatus further comprises: a voxel identification module arranged toidentify, for a retinal layer class of the predefined set of retinallayer classes, a subset of the set of voxels such that the value of theclassification indicator generated for each voxel of the subsetindicates a classification of the voxel as belonging to the retinallayer class; a confidence evaluation module arranged to calculate, foreach A-scan of a plurality of A-scans of the C-scan, which A-scan has atleast one voxel in the identified subset, a respective value of a secondconfidence indicator which is indicative of a level of confidence in aclassification of the at least one voxel in the A-scan into the retinallayer class, based on at least one value of the first confidenceindicator that has been respectively generated for the at least onevoxel in the A-scan; and a segmentation confidence map generation modulearranged to generate the segmentation confidence map using thecalculated values of the second confidence indicator, such that thesegmentation confidence map indicates a spatial distribution of a levelof confidence in the classification of the voxels in the subset asbelonging to the retinal layer class of the predefined set of retinallayer classes.

There is also provided, in accordance with a fifth example aspectherein, an apparatus for generating a segmentation confidence map byprocessing retinal layer segmentation data generated by a retinal layersegmentation algorithm, which generates the retinal layer segmentationdata by generating, for each voxel of at least a portion of a C-scan ofa retina, a respective value of a classification indicator indicating aclassification of the voxel as belonging to a retinal layer class of thepredefined set of retinal layer classes. The apparatus comprises: aconfidence indicator evaluation module arranged to generate, for eachvoxel of a set of voxels for which the retinal layer segmentation datahas been generated, a respective value of a first confidence indicatorwhich is indicative of a level of confidence in the classification ofthe voxel; a voxel identification module arranged to identify, for aretinal layer class of the predefined set of retinal layer classes, asubset of the set of voxels such that the value of the classificationindicator generated for each voxel of the subset indicates aclassification of the voxel as belonging to the retinal layer class; aconfidence evaluation module arranged to calculate, for each A-scan of aplurality of A-scans of the C-scan, which A-scan has at least one voxelin the identified subset, a respective value of a second confidenceindicator which is indicative of a level of confidence in aclassification of the at least one voxel in the A-scan into the retinallayer class, based on at least one value of the first confidenceindicator that has been respectively generated for the at least onevoxel in the A-scan; and a segmentation confidence map generation modulearranged to generate the segmentation confidence map using thecalculated values of the second confidence indicator, such that thesegmentation confidence map indicates a spatial distribution of a levelof confidence in the classification of the voxels in the subset asbelonging to the retinal layer class of the predefined set of retinallayer classes.

BRIEF DESCRIPTION OF THE DRAWINGS

Example embodiments will now be explained in detail, by way ofnon-limiting example only, with reference to the accompanying figuresdescribed below. Like reference numerals appearing in different ones ofthe figures can denote identical or functionally similar elements,unless indicated otherwise.

FIG. 1 a illustrates an OCT B-scan image of a retina of an eye.

FIG. 1 b shows an enlarged and partially enhanced segment of the OCTB-scan image of FIG. 1 a.

FIG. 2 is a schematic illustration of an apparatus for generating asegmentation confidence map, according to a first example embodiment.

FIG. 3 is a schematic illustration of the generation of a processing ofa portion of a C-scan by a retinal layer segmentation algorithm togenerate retinal layer segmentation data that is to be provided as aninput to the apparatus of the first example embodiment.

FIG. 4 illustrates an example implementation in programmable signalprocessing hardware of the first of the example embodiment herein.

FIG. 5 is a flow diagram illustrating a process by which the apparatusof the first example embodiment generates a segmentation confidence mapbased on retinal layer segmentation data generated by a retinal layersegmentation algorithm.

FIG. 6 is a schematic illustration of an apparatus for generating asegmentation confidence map, according to a second example embodiment.

FIG. 7 is a flow diagram illustrating a process by which the apparatusof the second example embodiment generates a segmentation confidence mapbased on retinal layer segmentation data generated by a retinal layersegmentation algorithm.

FIG. 8 is a schematic illustration of an apparatus for generating asegmentation confidence map according to a third example embodiment.

FIG. 9 is a flow diagram illustrating a process by which the apparatusof the third example embodiment generates a segmentation confidence mapand uses the segmentation confidence map to determine an indication of aretinal layer thickness.

FIG. 10 is a schematic illustration of an apparatus for generating asegmentation confidence map according to a fourth example embodiment.

FIG. 11 is a flow diagram illustrating a process by which the apparatusof the fourth example embodiment generates a segmentation confidence mapand uses the segmentation confidence map to determine an indication of aretinal layer thickness.

FIG. 12 is a schematic illustration of an apparatus for processing aretinal layer thickness map to determine an indication of a thickness ofa layer of a retina according to a fifth example embodiment.

FIG. 13 is a flow diagram illustrating a method by which the apparatusof the fifth example embodiment processes the retinal layer thicknessmap to determine the indication of the thickness of the layer of theretina.

FIG. 14 is a flow diagram illustrating a process by which the retinallayer thickness determination module of the fifth example embodimentdetermines the indication of the thickness of the layer of the retina.

FIG. 15 is a schematic illustration of a variant of the apparatus of thefifth example embodiment.

DETAILED DESCRIPTION OF EXAMPLE EMBODIMENTS

Probabilistic models used for semantic segmentation of OCT C-scans,which include (but are not limited to) convolutional neural network(CNN) models, provide segmentation results that can be difficult tointerpret, owing to a lack of information on a level of confidence thatcan be placed on the segmentation results. The inventor has recognisedthat probability information, which is used by probabilisticsegmentation models to perform semantic segmentation but is thenconventionally discarded, may be leveraged to provide an indication of alevel of confidence in the segmentation results that can be used toenhance their interpretability, improve the reliability of retinal layerthickness measurements derived from the segmentation results, andprovide metrics for logging OCT layer segmentation confidence, forexample. Example embodiments which process probability information froma retinal layer segmentation algorithm to generate a segmentationconfidence map that provides such an indication of a level of confidencein the segmentation results will now be described with reference to thefigures.

First Example Embodiment

FIG. 1 is a schematic illustration of an apparatus 100 for generating asegmentation confidence map M by processing retinal layer segmentationdata D_(seg), which is generated by a retinal layer segmentationalgorithm, RLSA. In the present example embodiment, the retinal layersegmentation algorithm processes a portion 20 of a C-scan 22 that hasbeen acquired by an optical coherence tomography (OCT) imaging system togenerate the retinal layer segmentation data D_(seg), as illustratedschematically in FIG. 3 . The C-scan 22 is a volumetric stack of nB-scans, where each B-scan is defined by a set of w×h voxels and can berendered to provide a sectional view of the retina. Each B-scan isformed of a sequence of w A-scans, each A-scan being a one-dimensionalarray of h voxels whose values represent OCT measurement results takenat varying depths in the retina.

The OCT imaging system used to acquire the C-scan may be of any typeknown to those versed in the art, for example a point-scan OCT imagingsystem, which can acquire an OCT image by scanning a laser beamlaterally across a region of the eye. The OCT imaging system mayalternatively be a parallel acquisition OCT imaging system, such asFull-Field OCT (FF-OCT) or Line-Field OCT (LF-OCT), which may offersuperior A-scan acquisition rates (up to tens of MHz) by illuminating anarea or a line on the sample, rather than scanning a single spot acrossthe eye. In FF-OCT, a two-dimensional region of the eye is illuminatedat the same time and the lateral positions across the region areconcurrently captured using a photodetector array such as a high-speedcharge-coupled device (CCD) camera. Where the OCT imaging system is aFull-field OCT, it may take the form of a full-field time-domain OCT(FF-TD-OCT) or full-field swept-source OCT (FF-SS-OCT), for example. InFF-TD-OCT, the optical length of the reference arm can be varied duringa scan in order to image regions at different depths in the eye. Eachframe captured by the high-speed camera in FF-TD-OCT thereforecorresponds to a slice of the eye at a respective depth within the eye.In FF-SS-OCT, the sample region is full-field illuminated using a sweptlight source that emits light whose wavelength varies over time. As thewavelength of the swept light source is swept over a range of opticalwavelengths, a spectrogram correlating reflectivity information againstoptical wavelength can be generated by the high-speed camera for eachcamera pixel. Each frame captured by the camera therefore corresponds toreflectivity information for a single wavelength of the swept lightsource. Upon acquiring a frame for every wavelength of the swept lightsource, a C-scan of the region can be obtained by performing a Fouriertransform on the samples of spectrograms generated by the camera. Inline-field OCT (LF-OCT), a line of illumination may be provided to thesample and a B-scan may be acquired in the imaging process. Line-fieldOCT may be classified as line-field time-domain OCT (LF-TD-OCT),line-field swept-source OCT (LF-SS-OCT), or line-field spectral-domainOCT (LF-SD-OCT), for example.

The retinal layer segmentation algorithm may be any kind of algorithmfor semantic segmentation which provides a probabilistic output to anm-class classification task. The retinal layer segmentation algorithmmay take one of many different forms known to those skilled in the art,and may comprise a convolutional neural network (CNN), a GaussianMixture model, a Random Forest, a Bayesian classifier or a SupportVector Machine, for example. By way of an example, the retinal layersegmentation algorithm is a CNN with a soft-max activation functionoutput layer and a cross-entropy loss function in the present exampleembodiment. Regardless of its specific form, the retinal layersegmentation algorithm generates retinal layer segmentation data D_(seg)in the form of a respective set of m probability values for each voxel(as exemplified by voxel 10) in the portion 20 of the C-scan 22, where mis an integer greater than or equal to 2. Thus, the output of theretinal layer segmentation algorithm is a hypervolume of size w×n×h×m.

By way of example, m=8 in the present example embodiment so that eightprobability values, P₁ to P₈, are generated for the voxel 10, asillustrated in FIG. 3 . Each of the probability values P₁ to P₈indicates a probability that the voxel 10 belongs to a respective classof a predefined set of eight classes. By way of an example, seven of theeight classes are retinal layer classes associated with respectiveanatomical layers of the retina (described in more detail below) whilethe remaining class is a background class associated with a backgroundthat does not include any of the seven retinal layers. The predefinedset of classes need not, however, include a background class.

Each of the probability values P₁ to P₇ indicates a probability of thevoxel 10 belonging to a respective retinal layer class of a predefinedset of retinal layer classes, while probability value P₈ indicates aprobability of the voxel 10 belonging to the background class. Eachretinal layer class of the predefined set is associated with arespective anatomical layer of the retina (or a combination of one ormore adjacent anatomical retinal layers). The anatomical layers areanatomically distinct structures of the retina that overlie each otherand may be distinguished in the depth axis of an OCT C-scan because ofdifferences in their light diffusive characteristics. Each layer has aninner surface and an outer surface (relative to the vitreous of theeye). The retina can be divided into layers comprising the innerlimiting membrane (ILM), the nerve fiber layer (NFL), the ganglion celllayer (GCL), the inner plexiform layer (IPL), the inner nuclear layer(INL), the outer plexiform layer (OPL), the outer nuclear layer (ONL),the outer limiting membrane (OLM), the photoreceptor layer (PL), and theretinal pigmented epithelium (RPE) monolayer.

Although the apparatus 100 of the present example embodiment is arrangedto receive and process retinal layer segmentation data D_(seg) generatedexternally of the apparatus 100, the apparatus of other exampleembodiments may be arranged to receive an OCT volumetric data of aretinal C-scan and process this data using a retinal layer segmentationalgorithm of the kind described above to generate the retinal layersegmentation data D_(seg) itself, before processing the retinal layersegmentation data D_(seg) to generate the segmentation confidence map Mas described below.

Referring again to FIG. 2 , the apparatus 100 of the present exampleembodiment comprises a voxel classification module 110, a voxelidentification module 120, a confidence evaluation module 130, and asegmentation confidence map generation module 140, whose functionalitywill be described in more detail below.

FIG. 4 is a schematic illustration of a programmable signal processinghardware 200, which may be configured to perform the operations of theapparatus 100 of the first example embodiment. One or more of thecomponent modules of the apparatus according to any of the other exampleembodiments described below may also be implemented in the form of aprogrammable signal processing hardware 200, as illustrated in FIG. 4 .

The programmable signal processing apparatus 200 includes acommunication interface (I/F) 210, for receiving the retinal layersegmentation data D_(seg) (or the C-scan 22 in case the apparatus 100 isarranged to process the C-scan 22 itself, using the retinal layersegmentation algorithm to generate the retinal layer segmentation dataD_(seg)) and for outputting the generated segmentation confidence map M,for example to a display for displaying a representation of thesegmentation confidence map M, for example in the form of a visualdisplay unit (VDU) such as a computer monitor. The signal processingapparatus 200 further includes a processor (e.g. a Central ProcessingUnit, CPU) 220, a working memory 230 (e.g. a random access memory) andan instruction store 240 storing a computer program 245 comprisingcomputer-readable instructions which, when executed by the processor220, cause the processor 220 to perform various functions of theapparatus 100 described herein. The working memory 230 storesinformation used by the processor 220 during execution of the computerprogram 245. The instruction store 240 may include a ROM (e.g. in theform of an electrically-erasable programmable read-only memory (EEPROM)or flash memory) which is pre-loaded with the computer-readableinstructions. Alternatively, the instruction store 240 may include a RAMor similar type of memory, and the computer-readable instructions of thecomputer program 245 can be input thereto from a computer programproduct, such as a non-transitory, computer-readable storage medium 250in the form of a CD-ROM, DVD-ROM, etc. or a computer-readable signal 260carrying the computer-readable instructions. In any case, the computerprogram 245, when executed by the processor 220, causes the processor220 to execute a method of processing the data received by thecommunication interface 210 to generate the segmentation confidence mapM as described herein. It should be noted, however, that at least someof the components of the apparatus 100 shown in FIG. 2 may alternativelybe implemented in non-programmable hardware, such as anapplication-specific integrated circuit (ASIC).

FIG. 5 is a flow diagram illustrating a method by which the apparatus100 of FIG. 2 processes the retinal layer segmentation data D_(seg) togenerate the segmentation confidence map M.

In process S10 of FIG. 5 , the voxel classification module 110 performsa voxel classification by generating, for each voxel of the set ofvoxels in the portion 20 of the C-scan 22, for which voxels the retinallayer segmentation data D_(seg) has been generated by the retinal layersegmentation algorithm, a respective value of a classification indicatorI_(class) based on the respective set of probability values P₁ to P₈,the value of the classification indicator I_(class) indicating aclassification of the voxel as belonging to a respective class of theset of predefined classes, the respective class being either thebackground class or one of the retinal layer classes. The voxelclassification module 110 may, as in the present example embodiment,perform this voxel classification by classifying the voxel into theclass of the predefined set of classes to which the voxel is most likelyto belong, as indicated by the highest one of the probability values P₁to P₈. The respective value of a classification indicator I_(class)generated for each voxel 10 may be specified as a predefined numericalvalue associated with the respective class of the predefined set ofclasses or by a flag value (e.g. 1 or 0) of a flag associated with therespective class of the predefined set of classes, for example. Eachgroup of voxels having a common value of the classification indicatorI_(class) defines a respective segmented C-scan.

In addition, in process S10 of FIG. 5 , the voxel classification module110 generates a respective value of the first confidence indicator C1for each classified voxel 10 in the set of voxels, which value isindicative of a respective level of confidence in the classification ofthe voxel 10.

The confidence indicator C1 may, as in the present example embodiment,be evaluated for each classified voxel 10 on the basis of theprobability values P₁ to P₈ that have been calculated for the voxel bythe retinal layer segmentation algorithm. This confidence indicatorevaluation can be done in one of a number of difference ways. Forexample, in the present example embodiment, the voxel classificationmodule 110 calculates a respective value of the first confidenceindicator C1 for each voxel in the portion 20 of the C-scan 22 as astandard deviation of the respective set of probability values P₁ to P₈.The values of the first confidence indicator C1 thus generated for eachvoxel of a B-scan in the portion 20 of the C-scan 22 define a(two-dimensional) variability map for the B-scan, which indicates howthe level of confidence in the classification of the voxels of theB-scan varies over the B-scan. Since the probability values for eachvoxel sum to 1, the standard deviation will be higher when one singleclass has a much larger value than the rest (indicating a highconfidence in the classification) and lower when multiple classes havesimilar values (indicating a low confidence in the classification).

In a variant of the first example embodiment, the voxel classificationmodule 110 may calculate a respective value of the first confidenceindicator C1 for each voxel in the portion 20 of the C-scan 22 as 1−D,where D is a difference between a highest probability value in therespective set of probability values and a lowest probability value inthe respective set of probability values. Voxels classified with lowconfidence will have a low value of the difference D (as the probabilityvalues in the set will be relatively close to each other), so that 1−Dwill then be high. B-scan variability maps generated in this way will besimilar in appearance to those based on the standard deviation.

In another variant of the example embodiment, the voxel classificationmodule 110 may calculate a respective value of the first confidenceindicator C1 for each voxel in the portion 20 of the C-scan 22 as 1−P,where P is a difference between a highest probability value in therespective set of probability values and a second highest probabilityvalue in the respective set of probability values. Voxels classifiedwith low confidence will have a low value of the difference P, and 1−Pwill be therefore high, similar to the variant noted above.

Although the confidence indicator C1 is evaluated for each classifiedvoxel 10 on the basis of the probability values P₁ to P₈ that have beencalculated for the voxel by the retinal layer segmentation algorithm inthe present example embodiment, the confidence indicator C1 may beevaluated for each classified voxel 10 in other ways in alternativeexample embodiments, independently of the probability values generatedby the retinal layer segmentation algorithm. For example, in analternative embodiment, the voxel classification module 110 may generatea respective value of the first confidence indicator C1 for each voxelin the set using a value of a local image quality metric that indicatesan image quality of a region of an image that has been rendered from apart of the C-scan 22 containing the voxel 10. The local image qualitymetric may take one of many different forms, for example: a localSignal-to-Noise Ratio (SNR) of a small B-scan patch centred on thevoxel; a comparative measure (e.g., a ratio or a difference) of thevoxel intensity with respect to neighbouring voxels or the rest of thevoxels in the B-scan;

or a comparative measure (e.g., a ratio or a difference) of the averageintensity of an entire A-scan with respect to neighbouring A-scans orthe rest of the voxels in the B-scan. In the latter example, all voxelsin the A-scan would have the same level of confidence.

As a further alternative, the voxel classification module 110 maygenerate a respective value of the first confidence indicator C1 foreach voxel in the set based on post-processing checks to verify thepresence of outliers in the segmentation output. Image processingtechniques (e.g. filtering, thresholding, and morphological operations)applied to the B-scan images or to segmentation confidence maps, or totheir en-face projections or to retinal layer thickness maps, can helpidentify the following in post-processing:

-   -   1. A-scans where the OCT scan pattern is occluded by imaging        artefacts, floaters in the vitreous, or shadow effects of        retinal blood vessels.    -   2. A-scans where non-contiguous voxels have been identified as        belonging to the same class (this could be an indication of        pathology or low image quality).    -   3. A-scans where the segmentation output does not respect the        physiological depth order of retinal layers (e.g. a cluster of        voxels labelled as nerve fiber layer identified underneath a        cluster of voxels labelled as photoreceptors.    -   4. A-scans where one layer presents a thickness discontinuity        (i.e. many more or many fewer voxels have been labelled as        belonging to a certain class) with respect to the neighbouring        A-scans.

Segmentation confidence maps can then be created by assigning a low (orzero) confidence to the areas listed above.

In process S20 of FIG. 5 , the voxel identification module 120identifies, for a retinal layer class of interest from among thepredefined set of retinal layer classes, a subset S of the set of voxelssuch that the value of the classification indicator I_(class) generatedfor each voxel of the subset S indicates a classification of the voxelas belonging to the retinal layer class. In this way, the voxelidentification module 120 picks out, from among the set of voxels forwhich the probability values have been calculated, a subset of thevoxels which have been classified in process S10 of FIG. 5 as belongingto one of the retinal layer classes of the predefined set of retinallayer classes. The retinal class of interest may be selectable by a userusing an input device (such as a computer mouse, keyboard, trackpad orthe like) connected to the apparatus 100, for example via the I/F module210 where the apparatus 100 is implemented in the form of a programmablesignal processing apparatus 200 as shown in FIG. 4 .

In process S20 of FIG. 5 , the voxel identification module 120 mayadditionally or alternatively identify, for the background class, asubset S of the set of voxels such that the value of the classificationindicator I_(class) generated for each voxel of the subset S indicates aclassification of the voxel as belonging to the background class.Although process S20 is shown to follow process S10 in FIG. 5 , itshould be noted that process S20 may run concurrently with process S10,with the voxel identification module 120 performing the identificationdescribed above using values of the classification indicator I_(class)as they are generated by the voxel identification module 110.

In process S30 of FIG. 5 , the confidence evaluation module 130calculates, for each A-scan of a plurality of A-scans of the C-scan 22,which A-scan has at least one voxel 10 in the identified subset S, arespective value of a second confidence indicator C2 which is indicativeof a level of confidence in a classification of the at least one voxelin the A-scan into the retinal layer class, based on at least one valueof the first confidence indicator C1 that has been respectivelygenerated for the at least one voxel in the A-scan. In other words, thevalue of the second confidence indicator C2 is calculated for eachA-scan having one or more voxels classified as belonging to the retinallayer class of interest using the value(s) of the first confidenceindicator C1 which has/have been calculated in process S10 for each ofthe aforementioned one or voxels in the A-scan. The value of the secondconfidence indicator C2 is calculated for each A-scan having one or morevoxels classified as belonging to the retinal layer class of interest bycalculating an average (e.g. a median, a mean or a refined mean based onvalues that remain after eliminating outliers) of the values of thefirst confidence indicator C1 which have been calculated in process S10for each of the aforementioned one or voxels in the A-scan. Put anotherway, for the retinal layer class of interest, values in the variabilitymaps mentioned above, which are labelled as belonging to the retinallayer class of interest according to the segmented C-scan, are averagedin the z-axis (depth direction).

In process S40 of FIG. 5 , the segmentation confidence map generationmodule 140 generates the segmentation confidence map M using the valuesof the second confidence indicator C2 calculated in process S30 of FIG.5 , such that the segmentation confidence map M indicates a spatialdistribution of a level of confidence in the classification of thevoxels in the subset S into the retinal layer class of interest. Thesegmentation confidence map generation module 140 may, as in the presentexample embodiment, generate the segmentation confidence map M byassigning, to each data element in a two-dimensional array of dataelements defining the segmentation confidence map M, which data elementsare associated with corresponding A-scans in the portion 20 of theC-scan 22 (i.e. an A-scan which is correspondingly located in the x-yplane of the C-scan 22 as the data element in the two-dimensional dataelement array of the segmentation confidence map M), a respective valuewhich indicates the value of the second confidence indicator C2calculated for the A-scan that corresponds to the data element. Thesegmentation confidence map generation module 140 may then normalize thesegmentation confidence map M, and fill any empty location in thetwo-dimensional array of the map M (corresponding to an A-scan in theC-scan 22 which contained no voxel classified as belong to the retinallayer class of interest) with the lowest value of the calculated valuesof the second confidence indicator C2.

In optional process S50 in FIG. 5 , the segmentation confidence mapgeneration module 140 generates image data defining an image of at leasta portion of the (optionally normalised) segmentation confidence map M,and may furthermore cause the image to be displayed on theaforementioned display. The segmentation confidence map generationmodule 140 may additionally display a single overall confidence scorecalculated as an average of the values of the second confidenceindicator C2 in the segmentation confidence map M, and/or localconfidence scores calculated as respective averages of the values of thesecond confidence indicator C2 in predefined sectors of the segmentationconfidence map M. The segmentation confidence map generation module 140may cause the image defined by the image data to be displayed on thedisplay in a variety of different forms, to provide visualinterpretability to the results of the retinal layer segmentation.

For example, the image may, as in the present example embodiment, bedisplayed as an overlay on an OCT en-face image shown on the display,the en-face image being based on the subset of voxels from the C-scan 22that have been classified as belonging to the retinal layer class ofinterest. This overlay may allow the user to easily identify any regionof the en-face image where the retinal layer segmentation has not beenperformed to a high level of confidence, for example.

In another example embodiment, the image may be displayed as an overlayon a retinal layer thickness map which is displayed on the display,wherein the retinal layer thickness map is based on the subset of voxelsof the C-scan that have been classified as belonging to the retinallayer class of interest and indicates how the determined thickness ofthis layer varies (laterally) across the retina. This overlay may allowthe user to easily identify any region of the thickness map in which theretinal layer thickness has not been determined reliably, for example.

In a further example embodiment, the image may be of a one-dimensionalsection of the confidence map M, which is displayed in the form of aplot aligned with a representation of a B-scan displayed on the display,wherein the B-scan comprises voxels which have been classified asbelonging to the retinal layer class of interest and are from A-scanswhose associated values of the second confidence indicator C2 have beenused to generate the one-dimensional section of the confidence map M.The plot may be overlaid on or displayed alongside the representation ofthe B-scan on the display, with the alignment allowing the user toidentify any part of the displayed representation of the B-scan whichcontains an unreliable segmentation of the retinal layer.

The segmentation confidence map M generated by the segmentationconfidence map generation module 140 can be used not only to aidinterpretation of retinal layer segmentation results but also to producemore reliable calculations of retinal layer thickness measures (asdescribed in the third and fourth example embodiments below), to computemetrics for logging OCT layer segmentation confidence, or to createalerts for the user about possibly challenging areas in an OCT volumes(e.g., low quality, imaging artefacts, lesions, other indefinitestructures), for example.

It should also be noted that the first example embodiment is not limitedto generating a single segmentation confidence map for a single retinallayer class of the predefined set of classes but may additionallygenerate a respective segmentation confidence map for each of one ormore of the remaining classes, including the background class. Asegmentation confidence map generated for the background class may beused to identify a floater or some other structure outside the retina asa likely cause of a feature in an en-face OCT image of the retina or afundus image registered to the segmentation confidence map, for example.

The segmentation confidence map generation module 140 may be arranged todetermine whether the segmentation confidence map M indicates a level ofconfidence in the classification of the voxels in the subset S asbelonging to the retinal layer class that is below a confidencethreshold value and, in a case where the segmentation confidence map Mis determined to indicate a level of confidence in the classification ofthe voxels that is below the confidence threshold value, generate analert (e.g. in the form of a message or other indication displayed onthe display, and/or an audio signal) to alter the a user to this resultof the determination. For example, where the segmentation confidence mapgeneration module 140 generates image data defining an image of at leasta portion of the segmentation confidence map M, the alert may beprovided by a part of the image of the segmentation confidence map M,wherein the level of confidence in the classification of the voxels inthe subset S as belonging to the retinal layer class is below theconfidence threshold value, being highlighted on the display, forexample by being show in a predetermined color (e.g. red) and/or byflashing (i.e. being repeatedly displayed and withdrawn from display).

Second Example Embodiment

FIG. 6 is a schematic illustration of an apparatus 300 for generating asegmentation confidence map M according to a second example embodiment.The apparatus 300 differs from the apparatus 100 of the first exampleembodiment by having a confidence indicator evaluation module 150 inplace of the voxel classification module 110, by the voxelidentification module 120 being arranged to receive values of theclassification indicator I_(class) that have been generated by a retinallayer segmentation algorithm, and by the confidence evaluation module130 being arranged to receive values of the first confidence indicatorC1 that have been generated by the confidence indicator evaluationmodule 150. The apparatus 300 is the same as the apparatus 100 of thefirst example embodiment in all other respects. The followingdescription of the second example embodiment will therefore focus on theaforementioned differences.

FIG. 7 is a flow diagram illustrating a method by which the apparatus300 of FIG. 6 processes a part or whole of a C-scan of a retina, andvalues of a classification indicator I_(class) that have been generatedby a retinal layer segmentation algorithm processing the part or whileof the C-scan, to generate a segmentation confidence map M of the formdescribed above. The retinal layer segmentation algorithm used togenerate the values of the classification indicator I_(class) input tothe apparatus 300 may be any type of segmentation algorithm known tothose skilled in the art that is capable of generating classificationindicator values of the kind described above, and need not beprobabilistic in nature, as in the case of the first example embodiment(where the RLSA returns a set of probability values for each voxel,rather than a single segmentation/classification result). In the presentexample embodiment, the retinal layer segmentation algorithm generates,for each voxel of at least a portion of a C-scan of a retina, arespective value of a classification indicator I_(class) indicating aclassification of the voxel as belonging to a retinal layer class of thepredefined set of retinal layer classes.

In process S10-2 of FIG. 7 , the confidence indicator evaluation module150 generates, for each voxel of a set of voxels for which the retinallayer segmentation data has been generated, a respective value of afirst confidence indicator C1 which is indicative of a level ofconfidence in the classification of the voxel 10. The confidenceindicator evaluation module 150 may, as in the present exampleembodiment, generate a respective value of the first confidenceindicator C1 for each voxel in the set using a value of a local imagequality metric that indicates an image quality of a region of an imagethat has been rendered from a part of the C-scan 22 containing the voxel10. As a further alternative, the confidence indicator evaluation module150 may generate a respective value of the first confidence indicator C1for each voxel in the set based on post-processing checks to verify thepresence of outliers in the segmentation output.

In process S20 of FIG. 7 , the voxel identification module 120identifies, for a retinal layer class of the predefined set of retinallayer classes, a subset S of the set of voxels such that the value ofthe classification indicator I_(class) generated by the segmentationalgorithm for each voxel of the subset S indicates a classification ofthe voxel as belonging to the retinal layer class.

In process S30 of FIG. 7 , the confidence evaluation module 130calculates, for each A-scan of a plurality of A-scans of the C-scan,which A-scan has at least one voxel in the identified subset Sidentified by the voxel identification module 120, a respective value ofa second confidence indicator C2 which is indicative of a level ofconfidence in a classification of the at least one voxel in the A-scaninto the retinal layer class, based on at least one value of the firstconfidence indicator C1 that has been respectively generated by theconfidence indicator evaluation module 130 for the at least one voxel inthe A-scan.

Processes S40 and S50 in FIG. 7 are the same as the identically labelledprocesses in FIG. 5 , which have been described in detail above.

Third Example Embodiment

FIG. 8 is a schematic illustration of an apparatus 400 for generating asegmentation confidence map M according to a third example embodiment.The apparatus 400 differs from the apparatus 100 of the first exampleembodiment by further comprising a retinal layer thickness determinationmodule 160-1, which is arranged to use the segmentation confidence map Mgenerated by the segmentation confidence map generation module 140 andvalues of the classification indicator I_(class) generated by the voxelclassification module 110 to determine an indication I_(T) of athickness of a layer of the retina that is associated with the retinallayer class of interest. In all other respects, the apparatus 400 is thesame as the apparatus 100 of the first example embodiment. The operationof the retinal layer thickness determination module 160-1 will now bedescribed with reference to FIG. 9 .

FIG. 9 is a flow diagram illustrating a process by which the apparatus400 of the present example embodiment generates a segmentationconfidence map and uses the segmentation confidence map to determine theindication I_(T) of the thickness of the layer of the retina.

Processes S10 to S40 as the same as those described above with referenceto FIG. 5 .

In process S60-1 of FIG. 9 , the retinal layer thickness determinationmodule 160-1 uses the generated segmentation confidence map M toidentify, in the plurality of A-scans, an A-scan for which theassociated value of a second confidence indicator C2 is indicative of alevel of confidence in the classification of the at least one voxel inthe A-scan into the retinal layer class that exceeds a predefinedthreshold. An A-scan in which a group of one or more voxels have beenclassified into the retinal layer class of interest with a sufficientlyhigh degree of confidence, and which can therefore be used to obtain areliable estimate of the thickness of the associated retinal layer, isthus identified in process S60-1 of FIG. 9 .

In process S60-1 of FIG. 9 , the retinal layer thickness determinationmodule 160-1 may, as in the present example embodiment, binarize thesegmentation confidence map M generated for the retinal layersegmentation class of interest in process S40 of FIG. 9 according to athreshold value t, so that data elements in the two-dimensional dataelement array defining the segmentation confidence map M having valuesgreater than t are each set to contain a value of “1”, while theremaining data elements are each set to contain a value of “0”, forexample. The binarized segmentation confidence map can be used tohighlight locations of A-scans in the C-scan 22 for which a reliableevaluation of retinal layer thickness can be made. The A-scan identifiedin process S60-1 of FIG. 9 may be any A-scan which is at location in thex-y plane of the C-scan 22 which corresponds to a location in thebinarized segmentation confidence map of a data element containing thevalue of “1” in this example.

In process S62-1 of FIG. 9 , the retinal layer thickness determinationmodule 160-1 determines, as the indication I_(T) of the thickness of thelayer of the retina, a count of the at least one voxel (for which thevoxel classification module 110 has generated a value of theclassification indicator I_(class) which indicates a classification ofthe voxel(s) as belonging to the retinal layer class of interest) of theA-scan identified in process S60-1 of FIG. 9 . The one or more voxels inthe identified A-scan that are to be counted may, as in the presentexample embodiment, be identified by looking up the values of theclassification indicator I_(class) generated for the A-scan by the voxelclassification module 110, or alternatively by identifying one or morevoxels in the A-scan that belong to the subset S of voxels that havebeen identified by the voxel identification module 120 as belonging tothe retinal layer class of interest.

Although the result of process S62-1 of FIG. 9 may provide a sufficientindication of the thickness of the retinal layer, the retinal layerthickness determination module 160-1 may, as in the present exampleembodiment, repeat processes S60-1 and S62-1 to identify, using thesegmentation confidence map M, a second plurality of A-scans in theplurality of A-scans, wherein the respective value of a secondconfidence indicator C2 calculated for each A-scan of the secondplurality of A-scans is indicative of a respective level of confidencein the classification of the at least one voxel in the A-scan into theretinal layer class of interest that exceeds the predefined threshold.In repeating processes S60-1 and S62-1, the retinal layer thicknessdetermination module 160-1 determines, for each A-scan of the identifiedsecond plurality of A-scans, a respective count of the at least onevoxel in the A-scan, as described above.

The retinal layer thickness determination module 160-1 may calculate theaverage of these counts to obtain a reliable measure of the thickness ofthe retinal layer of interest in the region of the retina covered by theportion 20 of the C-scan 22, using only high-confidence segmentationdata. Additionally or alternatively, the retinal layer thicknessdetermination module 160-1 may, as in the present example embodiment,determine a respective indication of the thickness of the layer of theretina for each predefined region of a plurality of predefined regionsof the retina that are covered by the portion 22 of the C-scan 22, fromwhich predefined region a respective set of A-scans of the identifiedsecond plurality of A-scans has been acquired, by calculating an averageof the counts determined for the A-scans of the set of A-scans.

The number of the predefined regions is not limited, and theirarrangement on the retina may take various different forms. For example,the predefined regions of the retina may, as in the present exampleembodiment, be the nine regions of an Early Treatment DiabeticRetinopathy Study (ETDRS) grid. The indications of retinal layerthickness thus determined by the retinal layer thickness determinationmodule 160-1 may be scaled to values of thickness expressed in lengthmeasurement units such as microns or the like, and may be indicated inany desired form in the respective regions of an ETDRS grid that isdisplayed on the above-mentioned display, for example as numericalvalues or by color coding.

The retinal layer thickness determination module 160-1 may record, foreach ETDRS region, a fraction of the A-scans acquired in the region thatare not among the identified second plurality of A-scans. The fractionrecorded for each ETDRS grid region may be compared with a thresholdvalue tr. Where the fraction exceeds the threshold tr, the thicknessvalue calculated for the region may be highlighted as unreliable or notshown on the display, otherwise the thickness value calculated for theregion may be indicated on the displayed ETDRS grid as described above.A respective confidence score may be derived from each fraction anddisplayed on the display so as to provide an indication of thereliability of the average retinal layer thickness in the correspondingETDRS grid region (where indicated).

Although processing operations performed by the apparatus 400 of thepresent example embodiment to determine an indication I_(T) of thethickness of a single layer of the retina that is associated with theretinal layer class of interest have been described above, similaroperations may additionally be performed to determine a respectiveindication of the thickness one or more other layers of the retina thatis/are associated with the corresponding one or more retinal layerclasses of the predefined set of classes.

In a variant of the third example embodiment, the retinal layerthickness determination module 160-1 may, following a binarization ofthe segmentation confidence map M as described above, count, in eachA-scan in the portion 20 of the C-scan 22, the respective number ofvoxels for which the voxel classification module 110 has generated avalue of the classification indicator I_(class) which indicates aclassification of the voxels as belonging to the retinal layer class ofinterest. The result is a ‘thickness map’ that indicates a distributionof the voxel count values across the array of A-scans. The retinal layerthickness determination module 160-1 may then mask the thickness mapusing the binarized segmentation confidence map and discard voxel countvalues obtained from A-scans that are located at locations in the arrayof A-scans that correspond to locations of data elements in thenormalized segmentation confidence map having a data element value of“0”. Accordingly, the apparatus of this variant may (similar to thethird example embodiment) calculate retinal layer thickness values thatare more reliable than those calculated by some conventional techniques,which may be skewed by low-confidence segmentation results caused byimaging (or other) artefacts on the OCT volumetric data, for example.

The apparatus 400 of the third example embodiment or any of its variantsmay be modified by providing the retinal layer thickness determinationmodule 160-1 in combination with the apparatus 300 of the second exampleembodiment (instead of the apparatus 100 of the first exampleembodiment), so that the retinal layer thickness determination module160-1 is provided with the segmentation confidence map M generated bythe segmentation confidence map generation module 140 and values of theclassification indicator I_(class) generated by the voxel classificationmodule 110 of the second example embodiment.

Fourth Example Embodiment

FIG. 10 is a schematic illustration of an apparatus 500 for generating asegmentation confidence map M according to a fourth example embodiment.The apparatus 500 differs from the apparatus 100 of the first exampleembodiment by further comprising a retinal layer thickness determinationmodule 160-2, which is arranged to use the segmentation confidence map Mgenerated by the segmentation confidence map generation module 140 andvalues of the classification indicator I_(class) generated by the voxelclassification module 110 to determine an indication I_(T) of athickness of a layer of the retina that is associated with the retinallayer class of interest. In all other respects, the apparatus 500 is thesame as the apparatus 100 of the first example embodiment. The operationof the retinal layer thickness determination module 160-2 will now bedescribed with reference to FIG. 11 . The retinal layer thicknessdetermination module 160-2 is a variant of the retinal layer thicknessdetermination module 160-1 of the third example that determines theindication I_(T) of the retinal layer thickness in an alternative way,as described below.

FIG. 11 is a flow diagram illustrating a process by which the apparatus500 of the present example embodiment generates a segmentationconfidence map and uses the segmentation confidence map to determine theindication I_(T) of the thickness of the layer of the retina.

Processes S10 to S40 as the same as those described above with referenceto FIG. 5 .

In process S60-2 of FIG. 11 , the retinal layer thickness determinationmodule 160-2 determines, for each A-scan of a group of A-scans havingone or more voxels 10 for which the voxel classification module 110 hasgenerated a value of the classification indicator I_(class) whichindicates a classification of the voxel(s) as belonging to the retinallayer class of interest, a respective count of one or more voxels. Thevoxel(s) to be counted may, as in the present example embodiment, beidentified by looking up the values of the classification indicatorI_(class) generated for the A-scan by the voxel classification module110, or alternatively by identifying one or more voxels in the A-scanthat belong to the subset S of voxels that have been identified by thevoxel identification module 120 as belonging to the retinal layer classof interest.

In process S62-2 of FIG. 11 , the retinal layer thickness determinationmodule 160-2 calculates, a weighted average of the counts determined inprocess S60-2 of FIG. 11 , wherein the respective count determined foreach A-scan having at least one voxel 10 in the identified subset S isweighted by the respective value of the second confidence indicator C2that has been calculated by the confidence evaluation module 130 and isincluded in the segmentation confidence map M.

The weighted average may thus be calculated for all the A-scans in thesubset S, which have one or more voxels 10 for which the voxelclassification module 110 has generated a value of the classificationindicator I_(class) indicating a classification of the voxel(s) asbelonging to the retinal layer class of interest. In this case, theweighted average can provide a reliable measure of the thickness of theretinal layer of interest in the region of the retina covered by theportion 20 of the C-scan 22, as A-scans that have been segmented withhigh confidence are given more weight (and thus provide a greatercontribution to the weighted average) than A-scans that have beensegmented with low confidence.

The retinal layer thickness determination module 160-2 may, as in thepresent example embodiment, determine a respective indication of thethickness of the layer of the retina in this way for each predefinedregion of a plurality of predefined regions of the retina that arecovered by the portion 22 of the C-scan 22, from which predefined regiona respective set of A-scans of the identified second plurality ofA-scans has been acquired, by calculating a weighted average of thecounts determined for the A-scans of the set of A-scans.

The number of the predefined regions is not limited, and theirarrangement on the retina may take various different forms. For example,the predefined regions of the retina may, as in the present exampleembodiment, be the nine regions of an ETDRS grid. The indications ofretinal layer thickness thus determined by the retinal layer thicknessdetermination module 160-2 may be scaled to values of thicknessexpressed in length measurement units such as microns or the like, andmay be indicated in any desired form in the respective regions of anETDRS grid that is displayed on the above-mentioned display, for exampleas numerical values or by color coding.

The retinal layer thickness determination module 160-2 may record, foreach ETDRS region, a confidence level for the weighted averagecalculated for the region, based on values of the second confidenceindicator C2 that were used in the weighting. The confidence levelrecorded for each ETDRS grid region may be compared with a thresholdvalue tr′. Where the confidence level exceeds the threshold tr′, thethickness value calculated for the region may be highlighted asunreliable or not shown on the display, otherwise the thickness valuecalculated for the region may be indicated on the displayed ETDRS gridas described above. The confidence level recorded for an ETDRS gridregion, or a confidence score derived from the confidence level, may bedisplayed on the display so as to provide an indication of thereliability of the average retinal layer thickness in the ETDRS gridregion (where indicated).

Although processing operations performed by the apparatus 500 of thepresent example embodiment to determine an indication I_(T) of thethickness of a single layer of the retina that is associated with theretinal layer class of interest have been described above, similaroperations may additionally be performed to determine a respectiveindication of the thickness one or more other layers of the retina thatis/are associated with the corresponding one or more retinal layerclasses of the predefined set of classes.

The apparatus 500 of the fourth example embodiment or any of itsvariants may be modified by providing the retinal layer thicknessdetermination module 160-2 in combination with the apparatus 300 of thesecond example embodiment (instead of the apparatus 100 of the firstexample embodiment), so that the retinal layer thickness determinationmodule 160-2 is provided with the segmentation confidence map Mgenerated by the segmentation confidence map generation module 140 andvalues of the classification indicator I_(class) generated by the voxelclassification module 110 of the second example embodiment.

Although the retinal layer thickness determination module 160-1 of thethird example embodiment and the retinal layer thickness determinationmodule 160-2 of the fourth example embodiment are both arranged to usethe segmentation confidence map M generated by the segmentationconfidence map generation module 140 to determine the indication I_(T)of the thickness of the layer of the retina, the indication I_(T) of thethickness of the layer of the retina may, more generally, be determinedusing a segmentation confidence map generated in any other way(hereinafter referred to as segmentation confidence map M′), whichnevertheless indicates a spatial distribution, across the region of theretina, of a level of confidence in the retinal layer segmentationperformed by a retinal layer segmentation algorithm. The segmentationconfidence map M′ may, as in the present example embodiment, comprise atwo-dimensional array of segmentation confidence values that defines theaforementioned spatial distribution of the level of confidence in theretinal layer segmentation. The retinal layer segmentation algorithm maybe any type of segmentation algorithm known to those skilled in the artthat can perform retinal layer segmentation of an OCT scan of a portionof the retina, and need not be probabilistic in nature.

FIG. 12 is a schematic illustration of an apparatus 600 according to afifth example embodiment for processing a retinal layer thickness mapM_(T), which indicates a spatial distribution of a thickness of a layerof a retina across a region of the retina and is based on a retinallayer segmentation of a volumetric OCT scan of a portion of the retinaperformed by the retinal layer segmentation algorithm of the generalform described above, to determine an indication I_(T) of the thicknessof the layer of the retina. The retinal layer thickness map M_(T) may,as in the present example embodiment, comprise a two-dimensional arrayof retinal layer thickness values that defines the aforementionedspatial distribution of the thickness of the layer of the retina acrossthe region of the retina, wherein each retinal layer thickness value inthe array has an associated (corresponding) segmentation confidencevalue in the segmentation confidence map which indicated a level ofconfidence in a result of the segmentation which has been used tocalculate the retinal layer thickness value.

As shown in FIG. 12 , the apparatus 600 comprises an acquisition module610 and a retinal layer thickness determination module 620-1. Theapparatus 600 may, as in the present example embodiment, be implementedin the form of a programmable signal processing hardware as describedabove with reference to FIG. 4 . It should be noted, however, that oneor both of the modules of the apparatus 600 may alternatively beimplemented in non-programmable hardware, such as an ASIC.

The acquisition module 610 is arranged to acquire a segmentationconfidence map M′ indicating a spatial distribution, across the regionof the retina, of a level of confidence in the retinal layersegmentation performed by the retinal layer segmentation algorithm. Thesegmentation confidence map M′ may be generated by the acquisitionmodule 610 using any of the techniques described above (or otherwise),or by the acquisition module 610 receiving the segmentation confidencemap M′ from a device external to the apparatus 600, as in the presentexample embodiment.

The retinal layer thickness map M_(T) may be received by the apparatus600 from a device external to the apparatus 600, as in the presentexample embodiment, or it may be generated by the retinal layerthickness determination module 620-1 using the retinal layersegmentation algorithm to segment a volumetric OCT scan of a portion ofthe retina.

The retinal layer thickness determination module 620-1 is arranged todetermine the indication I_(T) of the thickness of the layer of theretina using the retinal layer thickness map M_(T) and the segmentationconfidence map M′.

FIG. 13 is a flow diagram illustrating a method by which the apparatus600 processes the retinal layer thickness map M_(T) to determine theindication I_(T) of the thickness of the layer of the retina.

In process 5610 of FIG. 13 , the acquisition module 610 acquires thesegmentation confidence map M′, by receiving it from an external device.

In process 5620 of FIG. 13 , the retinal layer thickness determinationmodule 620-1 determines the indication I_(T) of the thickness of thelayer of the retina using the retinal layer thickness map M_(T) and thesegmentation confidence map M′.

The retinal layer thickness determination module 620-1 may, as in thepresent example embodiment, be arranged to determine the indicationI_(T) of the thickness of the layer of the retina by the processillustrated in the flow diagram of FIG. 14 , namely by identifying, inprocess 5622 of FIG. 14 , a region of the segmentation confidence map M′(i.e. containing a set of values in the aforementioned array definingthe segmentation confidence map M′), which region indicates the level ofconfidence in the retinal layer segmentation performed by the retinallayer segmentation algorithm to exceed a threshold confidence levelC_(T). The segmentation confidence values in the identified region thusall exceed the threshold confidence level C_(T). In process 5624 of FIG.14 , the retinal layer thickness determination module 620-1 determinesan average value (e.g. mean or median) of the thickness of the layer ofthe retina in a region of the retinal layer thickness map M_(T) whichcorresponds to the identified region of the segmentation confidence mapM′.

FIG. 15 is a schematic illustration of an apparatus 700, which is avariant of apparatus 600 and is likewise arranged to process the retinallayer thickness map M_(T) to determine an indication I_(T) of thethickness of the layer of the retina. The apparatus 700 differs fromapparatus 600 only by the functionality of the retinal layer thicknessdetermination module 620-2, which is arranged to determine I_(T) in adifferent way to the retinal layer thickness determination module 620-1.More particularly, the retinal layer thickness determination module620-2 is arranged to determine the indication I_(T) of the thickness ofthe layer of the retina by calculating a weighted average of thethickness of the layer of the retina in the region of the retina byweighting each thickness value indicated at a respective location in theretinal layer thickness map M_(T) by the level of confidence indicatedat a corresponding location in the segmentation confidence map M′.

The example aspects described here avoid limitations, specificallyrooted in computer technology, relating to semantic segmentation ofretinal OCT C-scans. In particular, probabilistic models used forsemantic segmentation, which include (but are not limited to)convolutional neural network (CNN) models, provide segmentation resultsthat can be difficult to interpret, owing to a lack of information on alevel of confidence that can be placed on the segmentation results. Byvirtue of the example aspects described herein, probability information,which is used by segmentations model to perform semantic segmentationbut then conventionally discarded, may be leveraged to provide anindication of a level of confidence in the segmentation results that canbe used to enhance their interpretability, improve the reliability ofretinal layer thickness measurements derived from the segmentationresults, or provide metrics for logging OCT layer segmentationconfidence, for example. Also, by virtue of the foregoing capabilitiesof the example aspects described herein, which are rooted in computertechnology, the example aspects described herein improve computers andcomputer processing/functionality, and also improve the field(s) of atleast retinal OCT image analysis.

There has been described, in accordance with example embodiments, anapparatus as set out in E1 to E16 below, and an apparatus as set out inE17 to E19 below, a computer-implemented method as set out in E20 to E22below, and a non-transitory computer-readable storage medium as set outin E23 below.

-   -   E1. An apparatus for generating a segmentation confidence map by        processing retinal layer segmentation data generated by a        retinal layer segmentation algorithm, which generates, as the        retinal layer segmentation data, a respective set of probability        values for each voxel of at least a portion of a C-scan of a        retina, wherein each probability value indicates a probability        of the voxel belonging to a respective retinal layer class of a        predefined set of retinal layer classes, the apparatus        comprising:        -   a voxel classification module arranged to generate, for each            voxel of a set of voxels for which the retinal layer            segmentation data has been generated:            -   a respective value of a classification indicator based                on the respective set of probability values, the value                of the classification indicator indicating a                classification of the voxel as belonging to a respective                retinal layer class of the predefined set of retinal                layer classes; and            -   a respective value of a first confidence indicator which                is indicative of a respective level of confidence in the                classification of the voxel;        -   a voxel identification module arranged to identify, for a            retinal layer class of the predefined set of retinal layer            classes, a subset of the set of voxels such that the value            of the classification indicator generated for each voxel of            the subset indicates a classification of the voxel as            belonging to the retinal layer class;        -   a confidence evaluation module arranged to calculate, for            each A-scan of a plurality of A-scans of the C-scan, which            A-scan has at least one voxel in the identified subset, a            respective value of a second confidence indicator which is            indicative of a level of confidence in a classification of            the at least one voxel in the A-scan into the retinal layer            class, based on at least one value of the first confidence            indicator that has been respectively generated for the at            least one voxel in the A-scan; and        -   a segmentation confidence map generation module arranged to            generate the segmentation confidence map using the            calculated values of the second confidence indicator, such            that the segmentation confidence map indicates a spatial            distribution of a level of confidence in the classification            of the voxels in the subset as belonging to the retinal            layer class of the predefined set of retinal layer classes.    -   E2. The apparatus according to E1, wherein the voxel        classification module is arranged to generate the respective        value of the first confidence indicator for each voxel of the        set of voxels for which the retinal layer segmentation data has        been generated based on the respective set of probability        values.    -   E3. The apparatus according to E2, wherein the voxel        classification module is arranged to calculate the respective        value of the first confidence indicator for each voxel of the        set of voxels as one of:        -   a standard deviation of the respective set of probability            values;        -   1−D, where D is a difference between a highest probability            value in the respective set of probability values and a            lowest probability value in the respective set of            probability values; and        -   1−P, where P is a difference between a highest probability            value in the respective set of probability values and a            second highest probability value in the respective set of            probability values.    -   E4. The apparatus according to any one of E1 to E3, wherein the        retinal layer segmentation algorithm comprises one of a        convolutional neural network, a Gaussian Mixture model, a Random        Forest, a Bayesian classifier and a Support Vector Machine.    -   E5. The apparatus according to any one of E1 to E4, wherein        -   the retinal layer segmentation algorithm generates the            retinal layer segmentation data by calculating, for each            voxel of the at least a portion of the C-scan, a respective            set of probability values, wherein each probability value            indicates a probability of the voxel belonging to a            respective class of a predefined set of classes, the            predefined set of classes comprising the predefined set of            retinal layer classes and a predefined background class,        -   the value of the classification indicator generated for each            voxel of the set of voxels indicates a classification of the            voxel as belonging to a respective class of the predefined            set of classes,        -   the voxel identification module is arranged to identify, for            the background class, a second subset of the set of voxels            such that the value of the classification indicator            generated for each voxel of the second subset indicates a            classification of the voxel as belonging to the background            class;        -   the confidence evaluation module is arranged to calculate,            for each A-scan of a plurality of A-scans of the C-scan,            which A-scan has at least one voxel in the identified second            subset, a respective value of the second confidence            indicator, based on at least one value of the first            confidence indicator that has been respectively generated            for the at least one voxel in the A-scan; and        -   the segmentation confidence map generation module is            arranged to generate a second segmentation confidence map            using the values of the second confidence indicator            calculated for the A-scans having at least one voxel in the            identified second subset, such that the second segmentation            confidence map indicates a spatial distribution of a level            of confidence in the classification of the voxels in the            second subset as belonging to the background class.    -   E6. An apparatus for generating a segmentation confidence map by        processing retinal layer segmentation data generated by a        retinal layer segmentation algorithm, which generates the        retinal layer segmentation data by generating, for each voxel of        at least a portion of a C-scan of a retina, a respective value        of a classification indicator indicating a classification of the        voxel as belonging to a retinal layer class of the predefined        set of retinal layer classes, the apparatus comprising:        -   a confidence indicator evaluation module arranged to            generate, for each voxel of a set of voxels for which the            retinal layer segmentation data has been generated, a            respective value of a first confidence indicator which is            indicative of a level of confidence in the classification of            the voxel;        -   a voxel identification module arranged to identify, for a            retinal layer class of the predefined set of retinal layer            classes, a subset of the set of voxels such that the value            of the classification indicator generated for each voxel of            the subset indicates a classification of the voxel as            belonging to the retinal layer class;        -   a confidence evaluation module arranged to calculate, for            each A-scan of a plurality of A-scans of the C-scan, which            A-scan has at least one voxel in the identified subset, a            respective value of a second confidence indicator which is            indicative of a level of confidence in a classification of            the at least one voxel in the A-scan into the retinal layer            class, based on at least one value of the first confidence            indicator that has been respectively generated for the at            least one voxel in the A-scan; and        -   a segmentation confidence map generation module arranged to            generate the segmentation confidence map using the            calculated values of the second confidence indicator, such            that the segmentation confidence map indicates a spatial            distribution of a level of confidence in the classification            of the voxels in the subset as belonging to the retinal            layer class of the predefined set of retinal layer classes.    -   E7. The apparatus according to any one of E1 to E6, wherein the        voxel classification module is arranged to generate the        respective value of the first confidence indicator for each        voxel of the set of voxels for which the retinal layer        segmentation data has been generated using a value of a local        image quality metric that indicates an image quality of a region        of an image, which region has been rendered from a part of the        C-scan comprising the voxel.    -   E8. The apparatus according to any one of E1 to E7, further        comprising a retinal layer thickness determination module        arranged to us the segmentation confidence map and the values of        the classification indicator to determine an indication of a        thickness of a layer of the retina associated with the retinal        layer class.    -   E9. The apparatus according to E8, wherein the retinal layer        thickness determination module is arranged to determine the        indication of the thickness of the layer of the retina by a        process of:        -   using the segmentation confidence map to identify, in the            plurality of A-scans, an A-scan for which the value of a            second confidence indicator is indicative of a level of            confidence in the classification of the at least one voxel            in the A-scan into the retinal layer class that exceeds a            predefined threshold; and        -   determining a count of the at least one voxel in the            identified A-scan.    -   E10. The apparatus according to E9, wherein the retinal layer        thickness determination module is arranged to repeat the process        to:        -   identify, using the segmentation confidence map, a second            plurality of A-scans in the plurality of A-scans, wherein            the respective value of a second confidence indicator            calculated for each A-scan of the second plurality of            A-scans is indicative of a respective level of confidence in            the classification of the at least one voxel in the A-scan            into the retinal layer class that exceeds the predefined            threshold; and        -   determine, for each A-scan of the identified second            plurality of A-scans, a respective count of the at least one            voxel in the A-scan,        -   wherein a respective indication of the thickness of the            layer of the retina is determined for each predefined region            of a plurality of predefined regions of the retina, from            which predefined region a respective set of A-scans of the            identified second plurality of A-scans has been acquired, by            calculating an average of the counts determined for the            A-scans of the set of A-scans.    -   E11. The apparatus according to E8, wherein retinal layer        thickness determination module is arranged to determine the        indication of the thickness of the layer of the retina by:        -   determining, for each A-scan of the plurality of A-scans,            which A-scan has at least one voxel in the identified            subset, a respective count of the at least one voxel in the            identified subset in the A-scan; and        -   determining a weighted average of the determined counts,            wherein the respective count determined for each A-scan            having at least one voxel in the identified subset is            weighted by the respective value of the second confidence            indicator.    -   E12. The apparatus according to E11, wherein the retinal layer        thickness determination module is arranged to determine the        indication of the thickness of the layer of the retina for each        predefined region of a plurality of predefined regions of the        retina by:        -   determining, for each A-scan acquired from the predefined            region, which A-scan has at least one voxel in the            identified subset, a respective count of the at least one            voxel in the identified subset in the A-scan; and        -   determining a weighted average of the determined counts,            wherein the respective count determined for each A-scan            acquired from the predefined region and having at least one            voxel in the identified subset is weighted by the respective            value of the second confidence indicator.    -   E13. The apparatus according to E10 or E12, wherein the        predefined regions are demarcated by an ETDRS grid.    -   E14. The apparatus according to any one of E1 to E13, wherein        the segmentation confidence map generation module is further        arranged to generate image data defining an image of at least a        portion of the segmentation confidence map, and to cause the        image to be displayed on a display.    -   E15. The apparatus according to E14, wherein the segmentation        confidence map generation module is arranged to cause the image        to be displayed on the display as one of:        -   an overlay on an en-face image displayed on the display, the            en-face image being based on the subset of voxels classified            as belonging to the retinal layer class;        -   an overlay on a retinal layer thickness map displayed on the            display, the retinal layer thickness map being based on the            subset of voxels classified as belonging to the retinal            layer class; and        -   a plot aligned with a representation of a B-scan displayed            on the display, the B-scan being based on the subset of            voxels classified as belonging to the retinal layer class.    -   E16. The apparatus according to any one of E1 to E15, wherein        the segmentation confidence map generation module is further        arranged to determine whether the segmentation confidence map        indicates a level of confidence in the classification of the        voxels in the subset as belonging to the retinal layer class of        the predefined set of retinal layer classes that is below a        confidence threshold and, in a case where the segmentation        confidence map is determined to indicate a level of confidence        in the classification of the voxels that is below the confidence        threshold, generate an alert for a user.    -   E17. An apparatus for processing a retinal layer thickness map,        which indicates a spatial distribution of a thickness of a layer        of a retina across a region of the retina and is based on a        retinal layer segmentation of an optical coherence tomography        scan of a portion of the retina performed by the retinal layer        segmentation algorithm, to determine an indication of the        thickness of the layer of the retina, the apparatus comprising:        -   an acquisition module arranged to acquire a segmentation            confidence map which indicates a spatial distribution,            across the region of the retina, of a level of confidence in            the retinal layer segmentation performed by the retinal            layer segmentation algorithm; and        -   a retinal layer thickness determination module arranged to            determine the indication of the thickness of the layer of            the retina using the retinal layer thickness map and the            segmentation confidence map.    -   E18. The apparatus according to E17, wherein the retinal layer        thickness determination module is arranged to determine the        indication of the thickness of the layer of the retina by:        -   identifying a region of the segmentation confidence map,            which region indicates the level of confidence in the            retinal layer segmentation performed by the retinal layer            segmentation algorithm to exceed a threshold confidence            level; and        -   calculating an average value of the thickness of the layer            of the retina in a region of the retinal layer thickness map            which corresponds to the identified region of the            segmentation confidence map.    -   E19. The apparatus according to E17, wherein the retinal layer        thickness determination module is arranged to determine the        indication of the thickness of the layer of the retina by:        -   determining a weighted average of the thickness of the layer            of the retina in the region of the retina by weighting each            thickness value indicated at a respective location in the            retinal layer thickness map by the level of confidence            indicated at a corresponding location in the segmentation            confidence map.    -   E20. A computer-implemented method of processing a retinal layer        thickness map, which indicates a spatial distribution of a        thickness of a layer of a retina across a region of the retina        and is based on a retinal layer segmentation of an optical        coherence tomography scan of a portion of the retina performed        by the retinal layer segmentation algorithm, to determine an        indication of the thickness of the layer of the retina, the        method comprising:        -   acquiring a segmentation confidence map which indicates a            spatial distribution, across the region of the retina, of a            level of confidence in the retinal layer segmentation            performed by the retinal layer segmentation algorithm; and        -   determine the indication of the thickness of the layer of            the retina using the retinal layer thickness map and the            segmentation confidence map.    -   E21. The computer-implemented method according to E20, wherein        the indication of the thickness of the layer of the retina is        determined by:        -   identifying a region of the segmentation confidence map,            which region indicates the level of confidence in the            retinal layer segmentation performed by the retinal layer            segmentation algorithm to exceed a threshold confidence            level; and        -   calculating an average value of the thickness of the layer            of the retina in a region of the retinal layer thickness map            which corresponds to the identified region of the            segmentation confidence map.    -   E22. The computer-implemented method according to E20, wherein        the indication of the thickness of the layer of the retina is        determined by:        -   determining a weighted average of the thickness of the layer            of the retina in the region of the retina by weighting each            thickness value indicated at a respective location in the            retinal layer thickness map by the level of confidence            indicated at a corresponding location in the segmentation            confidence map.    -   E23. A non-transitory computer-readable storage medium storing        computer program instructions which, when executed by a computer        processor, cause the computer processor to perform the method        according to at least one of E20 to E22.

In the foregoing description, example aspects are described withreference to several example embodiments. Accordingly, the specificationshould be regarded as illustrative, rather than restrictive. Similarly,the figures illustrated in the drawings, which highlight thefunctionality and advantages of the example embodiments, are presentedfor example purposes only. The architecture of the example embodimentsis sufficiently flexible and configurable, such that it may be utilized(and navigated) in ways other than those shown in the accompanyingfigures.

Software embodiments of the examples presented herein may be provided asa computer program, or software, such as one or more programs havinginstructions or sequences of instructions, included or stored in anarticle of manufacture such as a machine-accessible or machine-readablemedium, an instruction store, or computer-readable storage device, eachof which can be non-transitory, in one example embodiment. The programor instructions on the non-transitory machine-accessible medium,machine-readable medium, instruction store, or computer-readable storagedevice, may be used to program a computer system or other electronicdevice. The machine- or computer-readable medium, instruction store, andstorage device may include, but are not limited to, floppy diskettes,optical disks, and magneto-optical disks or other types ofmedia/machine-readable medium/instruction store/storage device suitablefor storing or transmitting electronic instructions. The techniquesdescribed herein are not limited to any particular softwareconfiguration. They may find applicability in any computing orprocessing environment. The terms “computer-readable”,“machine-accessible medium”, “machine-readable medium”, “instructionstore”, and “computer-readable storage device” used herein shall includeany medium that is capable of storing, encoding, or transmittinginstructions or a sequence of instructions for execution by the machine,computer, or computer processor and that causes themachine/computer/computer processor to perform any one of the methodsdescribed herein. Furthermore, it is common in the art to speak ofsoftware, in one form or another (e.g. program, procedure, process,application, module, unit, logic, and so on), as taking an action orcausing a result. Such expressions are merely a shorthand way of statingthat the execution of the software by a processing system causes theprocessor to perform an action to produce a result.

Some embodiments may also be implemented by the preparation ofapplication-specific integrated circuits, field-programmable gatearrays, or by interconnecting an appropriate network of conventionalcomponent circuits.

Some embodiments include a computer program product. The computerprogram product may be a storage medium or media, instruction store(s),or storage device(s), having instructions stored thereon or thereinwhich can be used to control, or cause, a computer or computer processorto perform any of the procedures of the example embodiments describedherein. The storage medium/instruction store/storage device may include,by example and without limitation, an optical disc, a ROM, a RAM, anEPROM, an EEPROM, a DRAM, a VRAM, a flash memory, a flash card, amagnetic card, an optical card, nanosystems, a molecular memoryintegrated circuit, a RAID, remote data storage/archive/warehousing,and/or any other type of device suitable for storing instructions and/ordata.

Stored on any one of the computer-readable medium or media, instructionstore(s), or storage device(s), some implementations include softwarefor controlling both the hardware of the system and for enabling thesystem or microprocessor to interact with a human user or othermechanism utilizing the results of the example embodiments describedherein. Such software may include without limitation device drivers,operating systems, and user applications. Ultimately, suchcomputer-readable media or storage device(s) further include softwarefor performing example aspects herein, as described above.

Included in the programming and/or software of the system are softwaremodules for implementing the procedures described herein. In someexample embodiments herein, a module includes software, although inother example embodiments herein, a module includes hardware, or acombination of hardware and software.

While various example embodiments have been described above, it shouldbe understood that they have been presented by way of example, and notlimitation. It will be apparent to persons skilled in the relevantart(s) that various changes in form and detail can be made therein.Thus, the present disclosure should not be limited by any of the abovedescribed example embodiments, but should be defined only in accordancewith the following claims and their equivalents.

Further, the purpose of the Abstract is to enable the Patent Office andthe public generally, and especially the scientists, engineers andpractitioners in the art who are not familiar with patent or legal termsor phraseology, to determine quickly from a cursory inspection thenature and essence of the technical disclosure of the application. TheAbstract is not intended to be limiting as to the scope of the exampleembodiments presented herein in any way. It is also to be understoodthat the procedures recited in the claims need not be performed in theorder presented.

While this specification contains many specific embodiment details,these should not be construed as limiting, but rather as descriptions offeatures specific to particular embodiments described herein. Certainfeatures that are described in this specification in the context ofseparate embodiments can also be implemented in combination in a singleembodiment. Conversely, various features that are described in thecontext of a single embodiment can also be implemented in multipleembodiments separately or in any suitable sub-combination. Moreover,although features may be described above as acting in certaincombinations and even initially claimed as such, one or more featuresfrom a claimed combination can in some cases be excised from thecombination, and the claimed combination may be directed to asub-combination or variation of a sub-combination.

In certain circumstances, multitasking and parallel processing may beadvantageous. Moreover, the separation of various components in theembodiments described above should not be understood as requiring suchseparation in all embodiments, and it should be understood that thedescribed program components and systems can generally be integratedtogether in a single software product or packaged into multiple softwareproducts.

Having now described some illustrative embodiments and embodiments, itis apparent that the foregoing is illustrative and not limiting, havingbeen presented by way of example. In particular, although many of theexamples presented herein involve specific combinations of apparatus orsoftware elements, those elements may be combined in other ways toaccomplish the same objectives. Acts, elements and features discussedonly in connection with one embodiment are not intended to be excludedfrom a similar role in other embodiments or embodiments.

The apparatus and computer programs described herein may be embodied inother specific forms without departing from the characteristics thereof.The foregoing embodiments are illustrative rather than limiting of thedescribed systems and methods. Scope of the apparatus and computerprograms described herein is thus indicated by the appended claims,rather than the foregoing description, and changes that come within themeaning and range of equivalency of the claims are embraced therein.

The invention claimed is:
 1. A non-transitory computer-readable storagemedium comprising computer program instructions which, when executed byat least one processor, cause the at least one processor to perform amethod of generating a segmentation confidence map by processing retinallayer segmentation data generated by a retinal layer segmentationalgorithm, which generates, as the retinal layer segmentation data, arespective set of probability values for each voxel of at least aportion of a C-scan of a retina, wherein each probability valueindicates a probability of the voxel belonging to a respective retinallayer class of a predefined set of retinal layer classes, the methodcomprising: generating, for each voxel of a set of voxels for which theretinal layer segmentation data has been generated: a respective valueof a classification indicator based on the respective set of probabilityvalues, the value of the classification indicator (I_(class)) indicatinga classification of the voxel as belonging to a respective retinal layerclass of the predefined set of retinal layer classes; and a respectivevalue of a first confidence indicator which is indicative of arespective level of confidence in the classification of the voxel;identifying, for a retinal layer class of the predefined set of retinallayer classes, a subset of the set of voxels such that the value of theclassification indicator generated for each voxel of the subsetindicates a classification of the voxel as belonging to the retinallayer class; calculating, for each A-scan of a plurality of A-scans ofthe C-scan, which A-scan has at least one voxel in the identifiedsubset, a respective value of a second confidence indicator which isindicative of a level of confidence in a classification of the at leastone voxel in the A-scan into the retinal layer class, based on at leastone value of the first confidence indicator that has been respectivelygenerated for the at least one voxel in the A-scan; and generating thesegmentation confidence map using the calculated values of the secondconfidence indicator, such that the segmentation confidence mapindicates a spatial distribution of a level of confidence in theclassification of the voxels in the subset as belonging to the retinallayer class of the predefined set of retinal layer classes.
 2. Thenon-transitory computer-readable storage medium according to claim 1,wherein, in the generating of a respective value of the first confidenceindicator for each voxel of the set of voxels, the respective value ofthe first confidence indicator is generated based on the respective setof probability values.
 3. The non-transitory computer-readable storagemedium according to claim 2, wherein the respective value of the firstconfidence indicator is calculated for each voxel of the set of voxelsas one of: a standard deviation of the respective set of probabilityvalues; 1−D, where D is a difference between a highest probability valuein the respective set of probability values and a lowest probabilityvalue in the respective set of probability values; and 1−P, where P is adifference between a highest probability value in the respective set ofprobability values and a second highest probability value in therespective set of probability values.
 4. The non-transitorycomputer-readable storage medium according to claim 1, wherein theretinal layer segmentation algorithm comprises one of a convolutionalneural network, a Gaussian Mixture model, a Random Forest, a Bayesianclassifier and a Support Vector Machine.
 5. The non-transitorycomputer-readable storage medium according to claim 1, wherein theretinal layer segmentation algorithm generates the retinal layersegmentation data by calculating, for each voxel of the at least aportion of the C-scan, a respective set of probability values, whereineach probability value indicates a probability of the voxel belonging toa respective class of a predefined set of classes, the predefined set ofclasses comprising the predefined set of retinal layer classes and apredefined background class, the value of the classification indicatorgenerated for each voxel of the set of voxels indicates a classificationof the voxel as belonging to a respective class of the predefined set ofclasses, and the method further comprises: for the background class,identifying a second subset of the set of voxels such that the value ofthe classification indicator generated for each voxel of the secondsubset indicates a classification of the voxel as belonging to thebackground class; calculating, for each A-scan of a plurality of A-scansof the C-scan, which A-scan has at least one voxel in the identifiedsecond subset, a respective value of the second confidence indicator,based on at least one value of the first confidence indicator that hasbeen respectively generated for the at least one voxel in the A-scan;and generating a second segmentation confidence map using the values ofthe second confidence indicator calculated for the A-scans having atleast one voxel in the identified second subset, such that the secondsegmentation confidence map indicates a spatial distribution of a levelof confidence in the classification of the voxels in the second subsetas belonging to the background class.
 6. A non-transitorycomputer-readable storage medium comprising computer programinstructions which, when executed by at least one processor, cause theat least one processor to perform a method of generating a segmentationconfidence map by processing retinal layer segmentation data generatedby a retinal layer segmentation algorithm, which generates the retinallayer segmentation data by calculating, for each voxel of at least aportion of a C-scan of a retina, a respective value of a classificationindicator indicating a classification of the voxel as belonging to aretinal layer class of the predefined set of retinal layer classes, themethod comprising: generating, for each voxel of a set of voxels forwhich the retinal layer segmentation data has been generated, arespective value of a first confidence indicator which is indicative ofa level of confidence in the classification of the voxel; identifying,for a retinal layer class of the predefined set of retinal layerclasses, a subset of the set of voxels such that the value of theclassification indicator generated for each voxel of the subsetindicates a classification of the voxel as belonging to the retinallayer class; calculating, for each A-scan of a plurality of A-scans ofthe C-scan, which A-scan has at least one voxel in the identifiedsubset, a respective value of a second confidence indicator which isindicative of a level of confidence in a classification of the at leastone voxel in the A-scan into the retinal layer class, based on at leastone value of the first confidence indicator that has been respectivelygenerated for the at least one voxel in the A-scan; and generating thesegmentation confidence map using the calculated values of the secondconfidence indicator, such that the segmentation confidence mapindicates a spatial distribution of a level of confidence in theclassification of the voxels in the subset as belonging to the retinallayer class of the predefined set of retinal layer classes.
 7. Thenon-transitory computer-readable storage medium according to claim 6,wherein, in the generating of a respective value of the first confidenceindicator for each voxel of the set of voxels, the respective value ofthe first confidence indicator is generated using a value of a localimage quality metric that indicates an image quality of a region of animage, which region has been rendered from a part of the C-scancomprising the voxel.
 8. The non-transitory computer-readable storagemedium according to claim 1, wherein the method further comprises usingthe segmentation confidence map and the values of the classificationindicator to determine an indication of a thickness of a layer of theretina associated with the retinal layer class.
 9. The non-transitorycomputer-readable storage medium according to claim 8, wherein theindication of the thickness of the layer of the retina is determined bya process of: using the segmentation confidence map to identify, in theplurality of A-scans, an A-scan for which the value of a secondconfidence indicator is indicative of a level of confidence in theclassification of the at least one voxel in the A-scan into the retinallayer class that exceeds a predefined threshold; and determining a countof the at least one voxel in the identified A-scan.
 10. Thenon-transitory computer-readable storage medium according to claim 9,wherein the process is repeated to: identify, using the segmentationconfidence map, a second plurality of A-scans in the plurality ofA-scans, wherein the respective value of a second confidence indicatorcalculated for each A-scan of the second plurality of A-scans isindicative of a respective level of confidence in the classification ofthe at least one voxel in the A-scan into the retinal layer class thatexceeds the predefined threshold; and determine, for each A-scan of theidentified second plurality of A-scans, a respective count of the atleast one voxel in the A-scan, wherein a respective indication of thethickness of the layer of the retina is determined for each predefinedregion of a plurality of predefined regions of the retina, from whichpredefined region a respective set of A-scans of the identified secondplurality of A-scans has been acquired, by calculating an average of thecounts determined for the A-scans of the set of A-scans.
 11. Thenon-transitory computer-readable storage medium according to claim 8,wherein the indication of the thickness of the layer of the retina isdetermined by: determining, for each A-scan of the plurality of A-scans,which A-scan has at least one voxel in the identified subset, arespective count of the at least one voxel in the identified subset inthe A-scan; and determining a weighted average of the determined counts,wherein the respective count determined for each A-scan having at leastone voxel in the identified subset is weighted by the respective valueof the second confidence indicator.
 12. The non-transitorycomputer-readable storage medium according to claim 11, wherein theindication of the thickness of the layer of the retina is determined foreach predefined region of a plurality of predefined regions of theretina by: determining, for each A-scan acquired from the predefinedregion, which A-scan has at least one voxel in the identified subset, arespective count of the at least one voxel in the identified subset inthe A-scan; and determining a weighted average of the determined counts,wherein the respective count determined for each A-scan acquired fromthe predefined region and having at least one voxel in the identifiedsubset is weighted by the respective value of the second confidenceindicator.
 13. The non-transitory computer-readable storage mediumaccording to claim 10, wherein the predefined regions are demarcated byan ETDRS grid.
 14. The non-transitory computer-readable storage mediumaccording to claim 1, wherein the method further comprises generatingimage data defining an image of at least a portion of the segmentationconfidence map, and causing the image to be displayed on a display. 15.The non-transitory computer-readable storage medium according to claim14, wherein the image is caused to be displayed on the display as oneof: an overlay on an en-face image displayed on the display, the en-faceimage being based on the subset of voxels classified as belonging to theretinal layer class; an overlay on a retinal layer thickness mapdisplayed on the display, the retinal layer thickness map being based onthe subset of voxels classified as belonging to the retinal layer class;and a plot aligned with a representation of a B-scan displayed on thedisplay, the B-scan being based on the subset of voxels classified asbelonging to the retinal layer class.
 16. The non-transitorycomputer-readable storage medium according to claim 1, wherein themethod further comprises: determining whether the segmentationconfidence map indicates a level of confidence in the classification ofthe voxels in the subset as belonging to the retinal layer class of thepredefined set of retinal layer classes that is below a confidencethreshold and, in a case where the segmentation confidence map isdetermined to indicate a level of confidence in the classification ofthe voxels that is below the confidence threshold, generating an alertfor a user.
 17. An apparatus for generating a segmentation confidencemap by processing retinal layer segmentation data generated by a retinallayer segmentation algorithm, which generates, as the retinal layersegmentation data, a respective set of probability values for each voxelof at least a portion of a C-scan of a retina, wherein each probabilityvalue indicates a probability of the voxel belonging to a respectiveretinal layer class of a predefined set of retinal layer classes, theapparatus comprising: a voxel classification module arranged togenerate, for each voxel of a set of voxels for which the retinal layersegmentation data has been generated: a respective value of aclassification indicator based on the respective set of probabilityvalues, the value of the classification indicator indicating aclassification of the voxel as belonging to a respective retinal layerclass of the predefined set of retinal layer classes; and a respectivevalue of a first confidence indicator which is indicative of arespective level of confidence in the classification of the voxel; avoxel identification module arranged to identify, for a retinal layerclass of the predefined set of retinal layer classes, a subset of theset of voxels such that the value of the classification indicatorgenerated for each voxel of the subset indicates a classification of thevoxel as belonging to the retinal layer class; a confidence evaluationmodule arranged to calculate, for each A-scan of a plurality of A-scansof the C-scan, which A-scan has at least one voxel in the identifiedsubset, a respective value of a second confidence indicator which isindicative of a level of confidence in a classification of the at leastone voxel in the A-scan into the retinal layer class, based on at leastone value of the first confidence indicator that has been respectivelygenerated for the at least one voxel in the A-scan; and a segmentationconfidence map generation module arranged to generate the segmentationconfidence map using the calculated values of the second confidenceindicator, such that the segmentation confidence map indicates a spatialdistribution of a level of confidence in the classification of thevoxels in the subset as belonging to the retinal layer class of thepredefined set of retinal layer classes.
 18. An apparatus for generatinga segmentation confidence map by processing retinal layer segmentationdata generated by a retinal layer segmentation algorithm, whichgenerates the retinal layer segmentation data by generating, for eachvoxel of at least a portion of a C-scan of a retina, a respective valueof a classification indicator indicating a classification of the voxelas belonging to a retinal layer class of the predefined set of retinallayer classes, the apparatus comprising: a confidence indicatorevaluation module arranged to generate, for each voxel of a set ofvoxels for which the retinal layer segmentation data has been generated,a respective value of a first confidence indicator which is indicativeof a level of confidence in the classification of the voxel; a voxelidentification module arranged to identify, for a retinal layer class ofthe predefined set of retinal layer classes, a subset of the set ofvoxels such that the value of the classification indicator generated foreach voxel of the subset indicates a classification of the voxel asbelonging to the retinal layer class; a confidence evaluation modulearranged to calculate, for each A-scan of a plurality of A-scans of theC-scan, which A-scan has at least one voxel in the identified subset, arespective value of a second confidence indicator which is indicative ofa level of confidence in a classification of the at least one voxel inthe A-scan into the retinal layer class, based on at least one value ofthe first confidence indicator that has been respectively generated forthe at least one voxel in the A-scan; and a segmentation confidence mapgeneration module arranged to generate the segmentation confidence mapusing the calculated values of the second confidence indicator, suchthat the segmentation confidence map indicates a spatial distribution ofa level of confidence in the classification of the voxels in the subsetas belonging to the retinal layer class of the predefined set of retinallayer classes.
 19. The non-transitory computer-readable storage mediumaccording to claim 6, wherein the method further comprises using thesegmentation confidence map and the values of the classificationindicator to determine an indication of a thickness of a layer of theretina associated with the retinal layer class.
 20. The non-transitorycomputer-readable storage medium according to claim 19, wherein theindication of the thickness of the layer of the retina is determined bya process of: using the segmentation confidence map to identify, in theplurality of A-scans, an A-scan for which the value of a secondconfidence indicator is indicative of a level of confidence in theclassification of the at least one voxel in the A-scan into the retinallayer class that exceeds a predefined threshold; and determining a countof the at least one voxel in the identified A-scan.
 21. Thenon-transitory computer-readable storage medium according to claim 19,wherein the indication of the thickness of the layer of the retina isdetermined by: determining, for each A-scan of the plurality of A-scans,which A-scan has at least one voxel in the identified subset, arespective count of the at least one voxel in the identified subset inthe A-scan; and determining a weighted average of the determined counts,wherein the respective count determined for each A-scan having at leastone voxel in the identified subset is weighted by the respective valueof the second confidence indicator.
 22. The non-transitorycomputer-readable storage medium according to claim 6, wherein themethod further comprises generating image data defining an image of atleast a portion of the segmentation confidence map, and causing theimage to be displayed on a display, wherein the image is caused to bedisplayed on the display as one of: an overlay on an en-face imagedisplayed on the display, the en-face image being based on the subset ofvoxels classified as belonging to the retinal layer class; an overlay ona retinal layer thickness map displayed on the display, the retinallayer thickness map being based on the subset of voxels classified asbelonging to the retinal layer class; and a plot aligned with arepresentation of a B-scan displayed on the display, the B-scan beingbased on the subset of voxels classified as belonging to the retinallayer class.
 23. The non-transitory computer-readable storage mediumaccording to claim 6, wherein the method further comprises: determiningwhether the segmentation confidence map indicates a level of confidencein the classification of the voxels in the subset as belonging to theretinal layer class of the predefined set of retinal layer classes thatis below a confidence threshold and, in a case where the segmentationconfidence map is determined to indicate a level of confidence in theclassification of the voxels that is below the confidence threshold,generating an alert for a user.
 24. A method of generating asegmentation confidence map by processing retinal layer segmentationdata generated by a retinal layer segmentation algorithm, whichgenerates, as the retinal layer segmentation data, a respective set ofprobability values for each voxel of at least a portion of a C-scan of aretina, wherein each probability value indicates a probability of thevoxel belonging to a respective retinal layer class of a predefined setof retinal layer classes, the method comprising: generating, for eachvoxel of a set of voxels for which the retinal layer segmentation datahas been generated: a respective value of a classification indicatorbased on the respective set of probability values, the value of theclassification indicator (I_(class)) indicating a classification of thevoxel as belonging to a respective retinal layer class of the predefinedset of retinal layer classes; and a respective value of a firstconfidence indicator which is indicative of a respective level ofconfidence in the classification of the voxel; identifying, for aretinal layer class of the predefined set of retinal layer classes, asubset of the set of voxels such that the value of the classificationindicator generated for each voxel of the subset indicates aclassification of the voxel as belonging to the retinal layer class;calculating, for each A-scan of a plurality of A-scans of the C-scan,which A-scan has at least one voxel in the identified subset, arespective value of a second confidence indicator which is indicative ofa level of confidence in a classification of the at least one voxel inthe A-scan into the retinal layer class, based on at least one value ofthe first confidence indicator that has been respectively generated forthe at least one voxel in the A-scan; and generating the segmentationconfidence map using the calculated values of the second confidenceindicator, such that the segmentation confidence map indicates a spatialdistribution of a level of confidence in the classification of thevoxels in the subset as belonging to the retinal layer class of thepredefined set of retinal layer classes.
 25. A method of generating asegmentation confidence map by processing retinal layer segmentationdata generated by a retinal layer segmentation algorithm, whichgenerates the retinal layer segmentation data by calculating, for eachvoxel of at least a portion of a C-scan of a retina, a respective valueof a classification indicator indicating a classification of the voxelas belonging to a retinal layer class of the predefined set of retinallayer classes, the method comprising: generating, for each voxel of aset of voxels for which the retinal layer segmentation data has beengenerated, a respective value of a first confidence indicator which isindicative of a level of confidence in the classification of the voxel;identifying, for a retinal layer class of the predefined set of retinallayer classes, a subset of the set of voxels such that the value of theclassification indicator generated for each voxel of the subsetindicates a classification of the voxel as belonging to the retinallayer class; calculating, for each A-scan of a plurality of A-scans ofthe C-scan, which A-scan has at least one voxel in the identifiedsubset, a respective value of a second confidence indicator which isindicative of a level of confidence in a classification of the at leastone voxel in the A-scan into the retinal layer class, based on at leastone value of the first confidence indicator that has been respectivelygenerated for the at least one voxel in the A-scan; and generating thesegmentation confidence map using the calculated values of the secondconfidence indicator, such that the segmentation confidence mapindicates a spatial distribution of a level of confidence in theclassification of the voxels in the subset as belonging to the retinallayer class of the predefined set of retinal layer classes.